﻿Imports System.Text
Imports Microsoft.VisualStudio.TestTools.UnitTesting

Imports Logistica.Entities

<TestClass()> Public Class AlmacenDOTest

    <TestMethod()>
    Public Sub ListarAlmacenTest()
        Dim target As New AlmacenDO
        Dim actual = target.Listar

        Assert.IsNotNull(actual)
    End Sub



    <TestMethod()>
    Public Sub InsertarAlmacenTest()
        Dim target As New AlmacenDO
        Dim infoAlmacen As New AlmacenBE With {.Codigo = "ALM001", .Nombre = "Almacen Ejemplo 1"}
        Dim idAlmacen = target.Insertar(infoAlmacen)

        Assert.IsTrue(idAlmacen > 0)
    End Sub

    <TestMethod()>
    Public Sub ActualizarAlmacenTest()
        Dim target As New AlmacenDO
        Dim infoAlmacen As New AlmacenBE _
            With {.Id = 2, .Codigo = "ALM002", _
                  .Nombre = "Almacen Ejemplo 2", _
                  .Descripcion = "Descripcion Almacen 2000"}

        target.Actualizar(infoAlmacen)

        Dim infoAlmacenActualizado As AlmacenBE = target.Obtener(infoAlmacen)

        Assert.AreEqual(infoAlmacen.Codigo.Trim, infoAlmacenActualizado.Codigo.Trim)
        Assert.AreEqual(infoAlmacen.Descripcion, infoAlmacenActualizado.Descripcion)

    End Sub

    <TestMethod()>
    Public Sub EliminarAlmacenTest()
        Dim target As New AlmacenDO
        Dim infoAlmacen As New AlmacenBE With {.Id = 3}
        target.Eliminar(infoAlmacen)

        Dim infoAlmacenEliminado As AlmacenBE = target.Obtener(infoAlmacen)

        Assert.AreEqual(infoAlmacenEliminado.Id, 0)
    End Sub



End Class